home *** CD-ROM | disk | FTP | other *** search
/ MPEG Toolkit / MPEG Toolkit.iso / dos / vmpeg12 / vmpeg.doc < prev    next >
Text File  |  1997-01-01  |  15KB  |  410 lines

  1.  
  2.                               VMPEG V1.2
  3.  
  4.                        DOS / Windows MPEG player
  5.  
  6.                            by Stefan Eckart
  7.  
  8.                             September 1994
  9.  
  10.  
  11. 1. Features
  12. ===========
  13.  
  14.  - full MPEG-1 video standard (ISO 11172-2): I,P,B frames of arbitrary size
  15.  
  16.  - plays system layer (ISO 11172-1) files (audio is discarded)
  17.  
  18.  - high speed: e.g. 21 frames/s on a 386DX/33 for a 160x120 I frame
  19.                sequence (mjackson.mpg)
  20.  
  21.  - supports VGA and a variety of SVGAs
  22.  
  23.  - display options: 4x4 ordered dither normal size (8 bit)
  24.                     4x4 ordered dither double size (8 bit)
  25.                     grayscale (8 bit)
  26.                     true color (24 bit)
  27.  
  28.   - requires:
  29.  
  30.     - '386,'486 or '586 processor (no '286)
  31.     - 4 MB RAM
  32.     - VGA or Super VGA
  33.     - Windows version: Windows 3.1, Win32s and optionally WinG
  34.  
  35.  
  36. 2. Overview
  37. ===========
  38.  
  39. VMPEG is a fast decoder / viewer for MPEG encoded video sequences (.mpg
  40. files). MPEG (Moving Pictures Expert Group) is a video compression algorithm
  41. standardized by the International Organization for Standardization (ISO) and
  42. the International Electrotechnical Commision (IEC) as ISO/IEC IS 11172. Main
  43. application of MPEG is the storage and retrieval of video on/from Compact
  44. Disk at a rate of about 1.5 Mbit/sec.
  45.  
  46. VMPEG can play MPEG system layer streams containing both video and audio.
  47. Most streams from CD-ROM (Video-CD) are of this type. The audio stream is
  48. discarded by the decoder. VMPEG automatically detects whether the file is a
  49. video compression layer or a system layer file. I have also included a small
  50. utility (MPGSPLIT) which extracts the video and audio streams from a system
  51. layer stream into separate files (cf. MPGSPLIT.DOC).
  52.  
  53. The DOS version of VMPEG is compiled with the GNU C compiler (gcc) into '386
  54. code and runs under the DOS extender GO32 by DJ Delorie which is included in
  55. the archive file. The DOS version of VMPEG cannot be run from Windows.
  56.  
  57. The Windows version of VMPEG is the first release for Windows. It is not as
  58. thoroughly tested as the DOS version but already seems to be reasonably
  59. stable. Please feel free to report any bugs you encounter to my email
  60. address. The Windows version requires Windows 3.1 and the free Windows
  61. extensions MS Win32s (32 bit support) and optionally WinG (screen output
  62. acceleration). These packages are available by anonymous ftp from (currently)
  63.  
  64.   ftp.microsoft.com:/developr/win32dk/sdk-public/Win32s115a.Zip
  65.   ftp.microsoft.com:/developr/drg/WinG/WINGBT.ZIP
  66.  
  67. and perhaps somewhere on CompuServe.
  68.  
  69.  
  70. 3. Installation
  71. ===============
  72.  
  73. 3.1 DOS version
  74. ---------------
  75.  
  76. - You need at least a '386 with a VGA and 512 KB of RAM. 4 MB are strongly
  77.   recommended. XT, AT, EGA and CGA are not supported. A '387 is not required
  78.   nor does it increase speed. VMPEG doesn't use floating point.
  79.  
  80. - You should leave about 2 MB of RAM (XMS) unused: if you have, say,
  81.   a 4 MB system you shouldn't reserve more than 2 MB for a RAM drive.
  82.   Otherwise the DOS extender would start swapping memory pages from and to
  83.   disk. This would slow down the program, even if swapping to a RAM drive.
  84.  
  85. - If you have installed EMM386 make sure you don't have specified the
  86.   'noems' option in your config.sys file.
  87.  
  88. - Create a subdirectory for installation:
  89.  
  90.   md \vmpeg
  91.   cd \vmpeg
  92.  
  93. - Unzip the archive into this subdirectory:
  94.  
  95.   pkunzip -d vmpeg12.zip
  96.  
  97. - Edit VMPEG.BAT and VMPEG24.BAT; you probably have to change drive
  98.   and/or path specifications and to select a suitable graphics driver
  99.   (see paragraph 4).
  100.  
  101.  
  102. 3.2 Windows version
  103. -------------------
  104.  
  105. - Install Win32s and (optionally) WinG. These packages come with their own
  106.   installation instructions. Basically you have to run the setup program
  107.   supplied with them.
  108.  
  109.   Installation of Win32s copies a couple of files (w32sys.dll, win32s.ini,
  110.   win32s16.dll, winmm16.dll) to the Windows system directory and creates a
  111.   WIN32S subdirectory with additional files. It also adds two entries
  112.   (for winmm16.dll and w32s.386) to the system.ini file in the Windows
  113.   directory. You can deinstall Win32s by removing these files and restoring
  114.   your original system.ini file (saved in system.old by the setup program).
  115.  
  116.   Installation of WinG is optional. I have included two versions of VMPEG,
  117.   one with WinG calls (VMPEGWIN.EXE) and one without (VMPEGNWG.EXE).
  118.   The WinG version is faster, but the difference is only notable for
  119.   large (CIF/SIF) MPEGs (may depend on your SVGA).
  120.  
  121.   WinG adds several files (wing.dll, wing32.dll, wingde.dll, wingdib.drv,
  122.   wingpal.wnd, dva.386) to the system directory and adds an entry for DVA.386
  123.   to your system.ini file. To deinstall WinG simply remove this entry from
  124.   system.ini.
  125.  
  126.   If you start VMPEG (or any other program using WinG) for the first time,
  127.   a performance test window appears which adapts and optimizes WinG for the
  128.   VGA in your PC. This takes a while (about 3 minutes on my computer), don't
  129.   despair...
  130.  
  131. - Create a subdirectory for installation:
  132.  
  133.   md \vmpeg
  134.   cd \vmpeg
  135.  
  136. - Unzip the archive into this subdirectory:
  137.  
  138.   pkunzip -d vmpeg12.zip
  139.  
  140.   if you don't need the DOS version, you can delete vmpeg, go32.exe, the
  141.   drivers subdirectory and the vmpeg*.bat batch files
  142.  
  143. - You can start the program (vmpegwin.exe / vmpegnwg.exe) either from the
  144.   file manager or from the program manager (File->Run menu item) or you can
  145.   define a program entry in the program manager (File->New menu item).
  146.  
  147. - both VMPEG and the Win32s libraries need a lot of memory (about 3-5 MB in
  148.   total), and you may therefore have to increase the size of the swap file.
  149.   4 MB of RAM are sufficient, however, to run the program without swapping
  150.   (except during program startup).
  151.  
  152.  
  153. 4. Graphics Drivers (DOS version)
  154. =================================
  155.  
  156. The DRIVERS subdirectory contains a set of graphics drivers for different
  157. Super VGAs. Select the one that matches your graphics card by editing the
  158. file VMPEG.BAT (for 8 bit display). If none of the drivers work, you may try
  159. to use the (go32 internal) VESA driver and a TSR VESA BIOS extension. A
  160. collection of such drivers is available at
  161.  
  162.   oak.oakland.edu:/pub/msdos/graphics/vesadrv2.zip (anonymous ftp).
  163.  
  164. and on all other SimTel mirrors.
  165.  
  166. True color support requires VESA BIOS. It works for my configuration (a
  167. Cirrus Logic GD5422 based card with VESA BIOS) and should work for most other
  168. 'well behaved' boards as well. You may have to adjust the -y option in the
  169. last line of VMPEG24.BAT. The number indicates the length of each scanline.
  170. This is usually either 1920 or 2048. If the frames appear scattered over the
  171. screen, the setting is probably wrong... If you get incorrect colors (red
  172. sky, blue faces) you have a card with reversed RGB order. Simply replace the
  173. -y... by a -Y... to fix this.
  174.  
  175.  
  176. 5. Troubleshooting
  177. ==================
  178.  
  179. DOS version:
  180.  
  181. If you get a message about the CPU not being in Real Mode, you have to remove
  182. the noems option from the EMM386.EXE (or any other EMS emulator) line in your
  183. CONFIG.SYS.
  184.  
  185. Windows version:
  186.  
  187. If you get the message 'Can't find WING32.DLL' you don't have WinG properly
  188. installed. Either install WinG or use VMPEGNWG.EXE instead.
  189.  
  190. If starting VMPEGWIN briefly switches to text mode and displays the message
  191. 'This program cannot be run in DOS mode', Win32s is not installed properly.
  192.  
  193. If you get 'Out of Memory' errors, you have to increase the size of your
  194. swap file (from the control panel).
  195.  
  196.  
  197. 6. Command Line Options
  198. =======================
  199.  
  200. The following command line options are valid for both DOS and Windows
  201. versions. To specify options to the Windows version, you have to run it
  202. from the program manager (File->Run menu). Of course you can set all
  203. these options interactively after starting vmpegwin (without command
  204. line options).
  205.  
  206.   vmpeg [options] input.mpg
  207.   vmpeg24 [options] input.mpg
  208.   vmpegwin [options] input.mpg
  209.   vmpegwng [options] input.mpg
  210.  
  211. options:
  212.  
  213.   -l  loop the sequence (infinitely until you press a key)
  214.  
  215.   -x1 skip B frames
  216.   -x2 skip B and P frames, i.e. only I frames are displayed; you should
  217.       use this option for I-frame-only sequences (including Xing compatible
  218.       streams) to make the program run faster (as it doesn't have to manage
  219.       reference frames)
  220.  
  221.   -d0 (default) ordered 4x4 dither
  222.   -d1 grayscale
  223.   -d2 similar to -d0 but display magnified by a factor of 2
  224.  
  225.       True color mode is selected by using vmpeg24 instead of vmpeg. In this
  226.       case the -d switch isn't effective.
  227.  
  228. DOS version only:
  229.  
  230.   -in displace output by n pixel in horizontal direction
  231.   -jn displace output by n pixel in vertical direction
  232.  
  233.       VMPEG centers the MPEG on the screen. If the frame is larger than
  234.       the screen you can use the -i and -j options to pan the visible
  235.       area. positive n shifts to the right or bottom, negative n to the
  236.       left or upwards.
  237.  
  238.   -zn reduce display speed. This is done by a counting loop, so you
  239.       have to experiment until you get the speed you want.
  240.  
  241.  
  242. The program can be terminated by pressing an arbitrary key (DOS version).
  243.  
  244.  
  245. 7. Remarks
  246. ==========
  247.  
  248. Please report bugs (don't forget to mention which version of VMPEG you are
  249. using!) to my email address:
  250.  
  251.   stefan@lis.e-technik.tu-muenchen.de
  252.  
  253. or by mail to:
  254.  
  255.   Stefan Eckart
  256.   Kagerstr. 4
  257.   D-81669 Muenchen, Germany
  258.  
  259.  
  260. 8. Acknowledgements, Copyrights
  261. ===============================
  262.  
  263. This program comes without any warranty. Your are using it at your own
  264. risk. VMPEG is copyrighted software (C) Stefan Eckart, 1994. You may
  265. use, copy and distribute this program without restrictions but only in
  266. unmodified form and without charging money for it.
  267.  
  268. GO32.EXE, DRIVERS\*.GRD:
  269.  
  270.    Copyright (C) DJ Delorie
  271.                  24 Kirsten Ave
  272.                  Rochester NH  03867-2954
  273.  
  274. These files are part of DJGPP which is available from
  275.  
  276.     host:      oak.oakland.edu (or another SimTel mirror)
  277.     login:     ftp
  278.     password:  send your e-mail address
  279.     directory: /pub/msdos/djgpp
  280.  
  281. other DRIVERS:
  282.  
  283.  Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
  284.  Copyright (C) 1992 Csaba Biegl, 820 Stirrup Dr, Nashville, TN 37221
  285.  
  286. VMPEG:
  287.  
  288. The library VMPEG is linked with is
  289.  
  290.  Copyright (c) Regents of the University of California.
  291.  
  292.  acknowledgement:  ``This product includes software developed by the
  293.  University of California, Berkeley and its contributors''
  294.  
  295.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
  296.  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  297.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  298.  
  299. The program is compiled with GNU GCC, the C compiler of the Free
  300. Software Foundation (FSF), Inc. 675 Mass Ave, Cambridge, MA 02139, USA.
  301. VMPEG does not contain code covered by the FSF General Public License.
  302.  
  303.  
  304. 9. Known Bugs
  305. =============
  306.  
  307. Interframe coded macroblocks theoretically can experience wrap-around
  308. (255<->0). This happens rarely enough to live with it (fixing would
  309. reduce speed for all sequences).
  310.  
  311. Accuracy of the IDCT does not meet the requirements of IEEE 1180-1990. It is,
  312. however, a reasonable trade-off between speed and image quality.
  313.  
  314. Display should be synchronized to the frame rate signalled in the sequence
  315. header.
  316.  
  317. The program should use VESA BIOS supplied information instead of the -y
  318. option.
  319.  
  320.  
  321. 10. References
  322. ==============
  323.  
  324. 1. Coding of moving pictures and associated audio for digital storage
  325.    media up to about 1,5 Mbit/s, International Standard ISO/IEC
  326.    IS 11172, 1993.
  327.  
  328. 2. Frequently Asked Questions (FAQ) of the alt.binaries.pictures
  329.    and comp.compression newsgroup: contains an introduction to MPEG.
  330.  
  331. 3. Documentation of the PVRG MPEG software: a thorough overview
  332.    covering many aspects of MPEG.
  333.  
  334. 4. Documentation of the MSSG MPEG-2 codec (mpeg2codec, see below).
  335.  
  336.  
  337. Appendix A: Related Software
  338. ============================
  339.  
  340. This list is probably incomplete, but it's all I'm aware of. Of course
  341. there are programs for other systems as well (Mac, Amiga etc.).
  342.  
  343. mpeg2codec     MPEG-1 and MPEG-2 codec from the MPEG Software Simulation Group
  344.                Authors: Stefan Eckart, C. Fogg, C. Aeyung, S. Papuc
  345.                Includes source code for Unix X11 and Windows (Win32s / NT)
  346.                and compiled versions for PC.
  347.                ftp.netcom.com:/pub/cfogg/mpeg2/*
  348.  
  349. mpeg2play      a speed optimized version of the decoder from mpeg2codec
  350.                ftp.netcom.com:/pub/cfogg/mpeg2/mpeg2play*
  351.  
  352. mpeg_play      MPEG Video Software Decoder (Version 2.0; Jan 27, 1993)
  353.                Authors: Lawrence A. Rowe, Ketan Patel, and Brian Smith
  354.                Computer Science Division-EECS, Univ. of Calif. at
  355.                Berkeley
  356.                toe.cs.berkeley.edu:/pub/multimedia/mpeg/mpeg-2.0.tar.Z
  357.  
  358. cmpeg          an MPEG encoder for the PC (DOS, 640K, no '386 req.)
  359.                for Targa, PBMPLUS and Alchemy RAW images
  360.                Author: Stefan Eckart
  361.                garbo.uwasa.fi:/pc/graphics/cmpeg10.zip
  362.  
  363. dmpeg          MPEG decoder and player for the PC (DOS, 640K, VGA)
  364.                Author: Stefan Eckart
  365.                garbo.uwasa.fi:/pc/graphics/dmpeg11.zip
  366.  
  367. mpegwin        Port of mpeg_play for MS-Windows
  368.                by: Michael Simmons, msimmons@ecel.uwa.edu.au
  369.                toe.cs.berkeley.edu:/pub/multimedia/mpeg/Ports/mpegw*
  370.                (HiColor & TrueColor support, Shareware)
  371.  
  372. mpeg.exe       DOS MPEG player from Xing Technologies (XingIt V2.1)
  373.                (high speed, but decodes only a small subset of the
  374.                 MPEG standard, audio (.WAV,.MP2) support, Windows)
  375.                mpegview.zip (available from many ftp sites)
  376.  
  377. MPEGv1.1/1.2alpha
  378.                MPEG Software Encoder/Decoder
  379.                Authors: Portable Video Research Group (PVRG)
  380.                havefun.stanford.edu:/pub/mpeg/MPEGv*.tar.Z
  381.  
  382. disp
  383.                a display program for pictures and animations
  384.                including MPEG (based on mpeg_play)
  385.                contains additional drivers that can also be used
  386.                with VMPEG.
  387.                Author: Jih-Shin Ho, u7711501@bicmos.ee.nctu.edu.tw
  388.                NCTUCCCA.edu.tw:/PC/graphics/disp
  389.                
  390.  
  391.  
  392. APPENDIX B: MPEG files
  393. ======================
  394.  
  395. Two good sources for MPEG files:
  396.  
  397.   s2k-ftp.cs.berkeley.edu:/pub/multimedia/mpeg/movies
  398.   havefun.stanford.edu:/pub/mpeg
  399.  
  400. High quality MPEGs you simply can't afford to miss:
  401.  
  402.   tennis.mpg
  403.   flowg.mpg
  404.   bike.mpg
  405.  
  406.  
  407. --
  408. Stefan Eckart, stefan@lis.e-technik.tu-muenchen.de
  409. Kagerstr. 4, D-81669 Munich, Germany.
  410.